package com.world.rickcloudendpoint.common.enums;

import lombok.Getter;

/**
 * @description: 详细异常编码枚举
 * @author: jlsong
 * @date: 2022/01/15 12:22:53
 * @version: 1.0
 */
@Getter
public enum DetailCodesEnum {
    Http_Ok(200, "OK", "请求成功"),
    Http_Create(201, "Created", "已创建"),
    Http_Accepted(202,"Accepted", "已接受"),
    Http_Non_Authoritative(203, "Non-Authoritative Information", "非授权信息"),
    Http_No_Content(204, ":No Content", "无内容"),
    Http_Reset_Content(205, "Reset Content", "重置内容"),
    Http_Partial_Content(206, "Partial Content", "部分内容"),
    Http_Multiple_Choices(300, "Multiple Choices", "多种选择"),
    Http_Moved_Permanently(301, "Moved Permanently", "永久移动"),
    Http_Found(302, "Found", "临时移动"),
    Http_See_Other(303, "See Other", "查看其它地址"),
    Http_Not_Modified(304, "Not Modified", "未修改"),
    Http_Use_Proxy(305, "Use Proxy", "使用代理"),
    Http_Temporary_Redirect(307, "Temporary Redirect", "临时重定向"),
    Http_Bad_Request(400, "Bad Request", "客户端请求的语法错误，服务器无法理解"),
    Http_Unauthorized(401, "Unauthorized", "请求要求用户的身份认证"),
    Http_Forbidden(403, "Forbidden", "服务器理解请求客户端的请求，但是拒绝执行此请求"),
    Http_Not_Found(404, "Not Found", "未找到资源"),
    Http_Method_Not_Allowed(405, "Method Not Allowed", "方法被禁止"),
    Http_Not_Acceptable(406, "Not Acceptable", "服务器无法根据客户端请求的内容特性完成请求"),
    Http_Proxy_Authentication_Required(407, "Proxy Authentication Required", "请求要求代理的身份认证"),
    Http_Request_Time_out(408, "Request Time-out", "服务器等待客户端发送的请求时间过长，超时"),
    Http_Request_URI_Tool_Large(414, "Request-URI Too Large", "请求的URI过长（URI通常为网址），服务器无法处理"),
    Http_Unsupported_Media_Type(415, "Unsupported Media Type", "服务器无法处理请求附带的媒体格式"),
    Http_Internal_Server_Error(500, "Internal Server Error", "服务器内部错误，无法完成请求"),
    Http_Bad_Gateway(502, "Bad Gateway", "无效路由"),
    Http_Service_Unavailable(503, "Service Unavailable", "服务超载或系统维护"),
    Http_Version_Not_Supported(505, "HTTP Version not supported", "服务器不支持请求的HTTP协议的版本"),
    Net_Protocol_Not_Supported(800, "Net Protocal Not Supported", "网络消息协议不支持"),
    ;

    private int code;
    private String name;
    private String desc;

    DetailCodesEnum(int code, String name, String desc) {
        this.code = code;
        this.name = name;
        this.desc = desc;
    }
}
